home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 5
/
Aminet 5 - March 1995.iso
/
Aminet
/
text
/
misc
/
pcal_4_5.lha
/
pcal
/
Pcal.hlp
< prev
next >
Wrap
Text File
|
1994-10-16
|
32KB
|
708 lines
1 PCAL
Pcal generates PostScript to produce landscape or portrait
calendars for any month and year. The arguments month,year, and
nmonths, if provided, should be numeric. The month value should
be in the range 1 - 12, and the year value should be specified as
1 or 2 digits or as the full 4 digit year. If no numeric
arguments are provided, the calendar for the current month and
year will be generated.
If one numeric argument is provided, it is interpreted as the
year value, and calendars for the entire year will be generated.
Otherwise, nmonths months, starting with month and year, will be
generated.
For whole-year calendars (i.e. the -w option is given), the
command line arguments are interpreted somewhat differently. By
default, all months in the current year are printed, starting with
January. If the month argument alone is given, it is expected to
be the desired year to print, and prints all of the months in the
given year. If both month and year are given, then 12 consecutive
months are printed starting at the given month and year. If the
month, year, and nmonths arguments are all present, printing
begins with the given month and year and nmonths months are
printed, rounded up to the nearest multiple of 12.
VMS Version
Execution format:
pcal [options] [mm yy] [n]
2 Parameters
mm yy n
"mm" and "yy" are numeric values of the month (1-12) and year
(0-99) (i.e., July 1990 would be 7 90). If you just include the
"yy" option, an entire 12 months of calendars will be generated.
A specific month can be produced by including the "mm" parameter.
The "n" parameter will produce the "n" consecutive months of
calendars starting with the requested month.
The following flags may be specified (in increasing order of
precedence) in global symbol PCAL_OPTS, in "opt" lines in the date
file (all but -c, -e, -f, -h, -u, -v, -"D", -"U"), or on the
command line. Any flag which normally takes an argument may be
specified without the argument; this resets its value to the
program default. (-"D" alone thus clears all defined symbols;
-"U" alone has no effect.)
The "-" flag has been added to disambiguate cases where an
argument-less flag has been specified immediately before a numeric
parameter:
pcal -t - 9 90
2 Options
Pcal accepts several command line options (or from the
CALENDAR.DAT file). The uppercase options should be enclosed in
quotes as pcal is case-sensitive and the VMS command line parser
will convert the string to upper case otherwise. The quoted
strings are not needed if the options are included within the
CALENDAR.DAT file.
3 -e
Print an empty calendar (i.e., do not print entries from a
CALENDAR.DAT file.)
3 -f <FILE>
Directs pcal to use the file name <FILE> as the input file in
place of the default CALENDAR.DAT file. Note that the search
rules are different when -f is used. If <FILE> is an absolute
file name, then pcal attempts to open only that file. Otherwise,
pcal looks for <FILE> in the current directory, then in the
directory indicated by the environment variable PCAL_DIR (if
defined), and finally in the directory where the pcal executable
resides. If the given <FILE> file is not found, an error results.
3 -o <FILE>
Directs pcal to write the PostScript calendar into FILE
(default: CALENDAR.PS in the current directory.)
3 -l
This will cause the output to come out in landscape mode
(This is the default). This also resets the x- and y-axis scaling
and translation factors to the defaults for landscape mode.
3 -p
This will cause the output to come out in portrait mode
instead of landscape mode. This also resets the x- and y-axis
scaling and translation factors to the defaults for portrait mode.
3 -j
Directs pcal to print the Julian (Day Of Year, DOY) in each
calendar box.
3 -"J"
Directs pcal to print the Julian (Day Of Year, DOY) and the
number of days remaining in the year in each calendar box.
3 -m
This option causes a moon to be printed on days corresponding
to a full, half, or new moon (default: no moons).
3 -"M"
This option causes a fractional moon to be printed on all days
(default: no moons).
3 -g day1[-day2] | all | holiday
Causes all dates falling on weekday day1 (through day2 if
specified) to be printed in gray; -g all causes all weekdays
(other than holidays) to be printed in gray; -g holiday causes
all holidays to be printed in gray. day1 and day2 may wrap around
weekends; for example, -g fri-sun causes Fridays, Saturdays, and
Sundays to be printed in gray.
3 -"O"
Causes "gray" dates to be printed as outlined characters.
3 -"G" day1[-day2] | all | holiday
Similar to -g, but the selected days will be printed as
outlined characters filled with gray.
Note: The default for the above options is to print
Saturdays, Sundays, and holidays in gray and all other days in
black. For backward compatibility with earlier versions of pcal,
-"O" and -"G" alone change all non-black days to the specified
color.
3 -b day1[-day2] | all | holiday
Similar to - you guessed it - -g, but the selected days will
be printed in black. Since black is the default for weekdays, -b
is primarily used to overriding other flags (e.g., -g all -b
sat-sun ).
3 -s <date_shade>[/fill_shade]
Overrides the default values for date and/or fill box shading.
These values must be in the range 0.0 (black) through 1.0 (white);
they may be set independently of each other. The default values
are 0.8 for dates and 0.9 for empty boxes.
Note: For use with color printers, date_shade and fill_shade
may optionally be specified as a set of red:green:blue values;
red, blue, and green must in the range 0.0 through 1.0. At least
one ':' must be present for this option to be recognized; omitted
values are set to 0.0.
3 -"F" <DAY>
Selects weekday DAY as the first day of the week. The given
day will appear in the left-most column of the calendar.
3 -"A"
Directs pcal to use American date conventions "mm/dd[/yy]" and
"month dd" when parsing the date file (default).
3 -"E"
Directs pcal to use European date conventions "dd/mm[/yy]" and
"dd month" when parsing the date file.
3 -"X" xtrans
Specifies the x-axis translation value for positioning the
output on the page.
3 -"Y" ytrans
Specifies the y-axis translation value for positioning the
output on the page.
3 -x xscale
Specifies the x-axis scaling factor for the calendar size.
3 -y yscale
Specifies the y-axis scaling factor for the calendar size.
3 -t <title_font>[/size]
Specifies the name of a font to use to print all the calendar
heading text: the month name and year at the top of the calendar,
the weekday names, the notes box heading, and the foot strings.
The user may optionally specify the font size for the month/year
heading (single-month calendar only); for example, pcal -t
Times-Roman/54 sets the font to Times-Roman and the month/year
point size to 54. The font size may also be changed independently:
pcal -t /54 changes the point size to 54 without affecting the font
name.
3 -d <date_font>[/size]
Similar to the -t option, but selects the font and/or size
used to print the dates.
3 -n <text_font>[/size]
Similar to the -t and -d options, but selects the font and/or
size used to print the text associated with each day and in the
"Notes" blocks.
3 -r <mapping>
Specifies an 8-bit character set remapping for printing the
diacritical marks common to European languages; mapping may be
"Roman8" (ROMAN-8 extended character set), "Latin1" (ISO LATIN-1
extended character set), or "none" (builtin 8-bit mappings only).
It may be abbreviated to a single character if desired.
3 -"D" <SYMBOL>
Defines the named SYMBOL prior to reading the date file.
3 -"U" <SYMBOL>
Un-Defines the named SYMBOL prior to reading the date file.
3 -"L" <STRING>
Causes the accompanying string to be printed as a
left-justified footer. Format specifiers denoting the month
and/or year may appear in the string; the appropriate values will
be substituted upon printing.
3 -"C" <STRING>
Similar to -"L", but causes the accompanying string to be
printed as a centered footer.
3 -"R" <STRING>
Similar to -"L", but causes the accompanying string to be
printed as a right-justified footer.
3 -"N" <STRING>
Caused the accompanying string to be printed as the heading
for the "Notes" box. Note however, that pcal makes no attempt to
ensure that it fits.
3 -"B"
Causes pcal to leave unused calendar boxes blank (default is
gray).
3 -# n
Causes pcal to print n copies (maximum: 100) of each output
page.
3 -"S"
Causes pcal to suppress printing the small calendars. See the
CAVEATS section for further details.
3 -k
Causes pcal to print the small calendars in the upper left
corner (the default is to print them at the lower right).
3 -"K"
Causes pcal to print the small calendar for the previous month
in the upper left corner and the next month in the lower right
(the default is to print both at the lower right).
3 -w
Causes pcal to print a calendar for 12 consecutive months: 3
rows / 4 columns in landscape mode, 4 rows / 3 columns in portrait
mode. See the CAVEATS section for details on the use of this
option with other options.
3 -c
Causes pcal to generate a date file suitable for use as input
to the Un*x "calendar(1)" utility. The normal PostScript output
is suppressed.
3 -z <time_zone>
Forces pcal to ignore the moon file and to use its internal
algorithm for moon phase calculations, adjusting the phase by
time_zone hours (where time_zone is expressed in hours west of
UTC).
3 -"I"
Resets all parameters to the program defaults.
3 -h
Causes pcal to write version information, parameter usage
message, and full explanation of options and file formats (to
stdout) and terminate.
3 -u
Causes pcal to write version information and parameter usage
message (to stdout) and terminate.
3 -v
This prints version information only.
2 Date_File
By default, pcal simply prints an empty calendar. Its real
power is in its ability to place "events" in appropriate days on
the calendar, thus allowing the user to create personalized
calendars. This is achieved through the use of the "date file".
The date file is named CALENDAR.DAT. Pcal will look in
several places for such a file. First, if the environment
variable PCAL_DIR is defined, pcal searches the directory
indicated by that variable. Next, pcal searches the user's home
directory (as specified by the HOME environment variable). If
neither PCAL_DIR nor HOME is defined, pcal searches the current
directory instead. Finally, the directory where the pcal
executable resides will be checked. If no date file is found, an
empty calendar is printed; no error is generated.
If a date file is found, it will be searched for lines with
leading dates matching the requested month and year. Any text
following the dates found will be printed on the calendar under
the appropriate day of the month. Dates in the CALENDAR.DAT file
may be expressed in any of several formats:
<ordinal> <day_spec> in <month_spec>[*] [<text>]
[<ordinal>] <day_spec> <prep> <date_spec>[*] [<text>]
<date_spec>[*] [<text>]
<holiday>
Where:
<month_name> := first 3+ characters of name of month, or "all"
<month_spec> := <month_name>, or "year"
<day_spec> := first 3+ characters of name of weekday, "day",
"weekday", "workday", "holiday",
"nonweekday", "nonworkday", "nonholiday", "new_moon",
"first_quarter", "full_moon", or "last_quarter"
<ordinal> := any ordinal number "first", "1st", ... "fifth", "5th",
"last", "odd", "even", or "all"
<prep> := "before", "preceding", "after", "following",
"on_or_before" ("oob"), or
"on_or_after" ("ooa")
<holiday> := "Christmas", "Thanksgiving", etc.
<sep> := 1 or more non-numeric, non-space, non-"*" characters
<month> := day of month (1-31)
<day> := a numeric month (1-12)
<year> := a numeric year
If the -"A" option (American date formats, the default) is given:
<date_spec> := <month_name><day> | <month><sep><day>[<sep><year>]
If the -"E" option (European date formats) is given:
<date_spec> := <day><month_name> | <day><sep><month>[<sep><year>]
3 Text_Format_Description
Pcal also allows format specifiers in both the text and foot
strings (see the -L, -C, -R, and -N options below); each will be
replaced by a corresponding string as outlined in the table below.
Most of these are derived from the ANSI C strftime() function;
the %[louwMD] and %[o0+\-] format specifiers are specific to pcal:
%a abbreviated weekday
%A full weekday
%b abbreviated month name
%B full month name
%d day of month (1-31)
%j day of year (1-366)
%l days left in year (0-365)
%m month (1-12)
%U week number (0-53)
%W week number (0-53)
%u week number (1-54)
%w week number (1-54)
%y year w/o century (00-99)
%Y year w/century
%% % character
%o print number as ordinal
%0 print number with leading zeroes
%+ use following month or year
%- use previous month or year
%{+N}[DWMY] adjust date by +N days/weeks/months/years
%{\-N}[DWMY] adjust date by \-N days/weeks/months/years
%u specifier considers the week containing 1/1 as week 1 and
the following logical Sunday (the first day of the week as
printed; cf. the \-F option below) as the start of week 2; %U
considers the first logical Sunday as the first day of week 1. %w
and %W behave like %u and %U respectively, but use the first
logical Monday instead. Note that %w has a different meaning to
strftime().
The %o format specifier prints a number as an ordinal, with
the appropriate suffix ("st", "nd", "rd", or "th" in English)
appended; for example, %od prints the day of the month as "1st",
"2nd", "3rd", etc.
Unlike strftime(), pcal defaults to printing numbers (except
%y ) without leading zeroes. If leading zeroes are desired, the
`0' prefix may be used. For example, %0j prints the first day of
year as "001".
The %+ and %\- format specifiers direct pcal to substitute the
following/previous month/year in the following [bBmyY] specifier.
For example, %+B prints the name of the next month.
The %{[+\-]N}[DWMY] format specifiers do not print anything,
but instead adjust the working date by \(+- N days ( D ), weeks (
W ), months ( M ), or years ( Y ). Subsequent format specifiers
use the adjusted date instead of the current date. For example,
%+1M %B %Y adjusts the date forward by one month and then prints
the resulting month and year ("January 1992" in December, 1991);
%\-2W %b %d adjusts the date backward by two weeks and prints the
resulting month and day ("Jul 26" on August 9).
Such date adjustments are normally cumulative; for example,
%+1Y%\-1D adjusts the date forward by one year and then backward
by one day. If %D or %M is specified alone (or if N is zero),
pcal restores the original date. Note that %M has a different
meaning to the strftime() function.
The "Notes" box (see below) uses the first of the current
month as the default date. All foot strings use the first of the
current month in single-month mode and the first of the starting
month in whole-year mode.
3 Date_Syntax_Description
Any non-numeric character may separate numeric dates.
Holidays may be flagged by following the date immediately with "*"
as in the examples above; this will cause the date to be printed
in gray. "Each" and "every" are accepted as synonyms for "all",
and any word may be used in place of "in". The abbreviations
"oob" and "ooa" may be used in place of the keywords
"on_or_before" and "on_or_after", respectively. "Nearest"
attempts to match the specified date; if that fails, it tries the
day after, then the day before, then two days after, two days
before, and so forth until a match occurs.
Wildcard day names are also provided. The keyword "weekday"
applies to any days which are normally printed in black on the
calendar. The keyword "workday" is the same, but does not include
any holidays. The keyword "holiday" includes only those days
flagged as holidays. The keywords "nonweekday", "nonworkday", and
"nonholiday" are also recognized as negations of the above. See
the Caveats below for important notes on using these keywords.
Moon phases may also appear as wildcards; "nm" is accepted as a
synonym for "new_moon", "1q" and "fq" for "first_quarter", "fm"'
for "full_moon", "3q" for "third_quarter", and "lq" for
"last_quarter".
Ordinal day numbers may be used to specify dates, either
relative to the month or to the year. Either words or numeric
abbreviations may be used for "first" through "fifth"; higher
numbers must be given using the numeric equivalent (e.g. 100th).
Negative ordinal numbers may even be used. For example, "-2nd"
means "next to last".
"Odd" and "even" do not refer to the actual date; instead,
"odd" means "alternate, starting with the first", and "even" means
"alternate, starting with the second". Thus, "odd Fridays in
March" refers to the first, third, and (if present) fifth Fridays
in March - not to those Fridays falling on odd dates.
"All" refers to each individual month; "year" refers to the
year as an entity. Thus "odd Fridays in all" refers to the first,
third, and fifth Friday of each month, while "odd Fridays in year"
refers to the first Friday of January and every other Friday
thereafter.
Text in the date file may use C-like escape sequences (i.e. a
"\" followed by a character, 1--3 octal digits, or "x" followed by
1--2 hexadecimal digits). Escaped whitespace (including newline)
and the standard ANSI character escapes ("\a", "\b", "\f", "\n",
"\r", "\t", "\v") are all replaced by a single blank.
Lines in the CALENDAR.DAT file consisting of year #### (where
#### is a numeric year) can be used to set the year for following
entries. This assumes that the following entries do not contain a
year; any date entries containing year information will set the
remembered year to that year.
Lines in the CALENDAR.DAT file consisting of opt <options> can
be used to override the defaults for any command-line options
except -e, -f, -h, -"D", and -"U". Any options specified in this
manner are, in turn, overridden by those specified explicitly on
the command line. Note that the upper case letter options do NOT
need to be enclosed in quotes if they are put in the CALENDAR.DAT
file. Enclose the upper case letters in quotes only when they are
used on the DCL.
Lines in the CALENDAR.DAT file consisting of note [/<number>]
<month> can be used to place notes regarding the entire month is
one of the unused blocks of the calendar. The <month> indicator
may be either a number 1 through 12 or an alphabetic month name as
described above; "note all" will place the associated text in the
notes block for each month in the current year. <number> is an
optional positive or negative number specifying the empty box
where the associated text is to be placed. If positive, pcal
counts forward from the first empty box; if negative, pcal counts
backward from the last empty box. Thus, "note/1" places the
associated text in the first empty box; "note/-3" in the
third-to-last. The default is -1 if no <number> is given (last
empty box, immediately preceding the small calendars on the bottom
row; cf. \-S , \-k , and \-K , below).
Comments are supported in the CALENDAR.DAT file. Any
characters following a "#" character through the end of the line
are ignored (unless the `#' character is escaped by `\').
Pcal supports rudimentary cpp-like functionality in the date
file, allowing the following constructs: define | undef,
if{{n}def} ... elif ... * else ... endif, and include. Note
that these are not preceded by "#" as they are in C. Symbol names
defined using these keywords (or via the -"D" option) are
case-insensitive. It is not an error to undef an undefined
symbol, nor to define a previously-defined one. An ifdef alone is
always false; an ifndef alone is always true. if is accepted as
an synonym for ifdef.
The name of the file in the include directive may optionally
be surrounded by either "" or <>, both of which are ignored. If
the name is not an absolute path, it is taken to be relative to
the directory where the file containing the directive is located.
pcal normally terminates immediately if the file specified in
an include directive does not exist. An alternate form of the
directive, include?, directs pcal to continue silently if the file
does not exist or cannot be opened.
In addition to pre-processing keywords, pcal also accepts
boolean expressions in if{{n}}def} and elif directives. These
expressions consist of symbol names joined by the boolean
operators !, &, ^, and |, in order of precedence, high to low.
Parentheses may be used to alter the precedence. The synonyms &&
and || are accepted for & and |. A symbol name evaluates to true
if currently defined, false if not; thus:
ifdef A | B | C
... is true if any of the symbols A, B, and C is defined, and:
ifdef A & B & C
...is true if they all are. Note that ifndef <expr> is equivalent
to ifdef !( <expr> ).
3 Example
Date File Example:
# A sample "opt" line to change the fonts and output file names,
# to print only Sundays in gray, and to print moons on all days:
#
opt -d Helvetica-Bold -t Helvetica-Bold -o myfile.ps -b all -g sun -M
year 1994 # set year explicitly
1/1* New Year's Day
ifndef Arizona
3rd Mon in Jan* Martin Luther King's Birthday
endif
2/2 Groundhog Day
Feb 14 Valentine's Day
3rd Monday in Feb* Presidents' Day
3/17 St. Patrick's Day
last Monday in May* Memorial Day
7/4* Independence Day
1st Monday in Sep* Labor Day
second Monday in Oct* Columbus Day (observed)
first workday in all %-B progress report due
all Fridays in Oct Status Meeting, 11 AM
all Fri in all Time card due, 3 PM
all Monday in all Fiscal week %0W
-2nd workday in all Schedule for %+B due %+2D
2nd full_moon in all Blue Moon
Fri on_or_before all 15 Pay Day
even Fridays in year Pay Day
183rd day of year Mid-year (%l days left)
10/12 Columbus Day (traditional)
10/31 Halloween
Tue after first Mon in Nov Election Day
11/11* Veterans' Day
fourth Thu in Nov* Thanksgiving
Fri after 4th Thu in Nov* Day after Thanksgiving
day after fourth Thu in Nov*
12/25/94* Christmas # American
12/24* Christmas Eve
12/25* Christmas
25.12.94* Christmas # European
25. 12.* Christmas # European
25 Dec* Christmas # European
25. Dec* Christmas # European
workday nearest 12/25* Holiday
last day in Dec* New Year's Eve
last workday in all Status reports due
note Dec Office closed throughout week of Christmas
1/1/95* New Year's Day # set new year implicitly
2 Moon_File
If a file of the name MOON##.DAT (where ## is the last two
digits of the calendar year) exists in the same directory as the
date file (or in the directory where pcal resides) pcal uses the
information contained within to calculate the phase of the moon.
If no such file exists, pcal uses an extremely reliable algorithm.
This is the preferred method of use.
Entries in the moon file must conform to the following syntax:
If the -"A" option (American date formats, the default) is
given:
<quarter> <month><sep><day> [<hour><sep><min>]
If the -"E" option (European date formats) is given:
<quarter> <day><sep><month> [<hour><sep><min>]
Where:
<quarter> := "nm", "fq" or "1q", "fm", "3q" or "lq"
(new moon,first quarter,full moon,last quarter)
<hour> := number 0-23 (24-hour clock)
<min> := number 0-59
This file must contain entries for all quarter moons in the
year, in chronological order; if any errors are encountered, pcal
will revert to using its default algorithm.
As in the date file, comments start with "#" and run through
end-of-line.
The moon file may optionally contain an opt -A or opt -E line
to specify the format of its own date entries independently of the
format used in the date file. No other flags are legal in the
moon file.
3 Example
The following is a short example of an European style (-"E)
moon data file. It is taken from the MOON91.DAT file supplied
with pcal.
3q 01/07 13:37 # third quarter
nm 01/15 18:51 # new moon
1q 01/23 09:23 # first quarter
fm 01/30 01:10 # full moon
2 Logical_Names
Pcal optionally uses two (2) logical names during execution.
A user may define them or let the administrator set them up.
3 Pcal_Dir
Pcal logical name for the location of the directory for input
and output files. In this way, a user can over-ride the current
default location for the source of the CALENDAR.DAT input file
and the CALENDAR.PS output file.
3 Pcal_Opts
Pcal also looks for a logical name "Pcal_Opts; if defined,
its contents are parsed as command-line flags. These over-ride
the program defaults, but are over-ridden by any specified via
"opt" lines in the date file or on the command line. Example:
Define Pcal_Opts "-n Helvetica -D meetings" ! login.com
pcal -"U" meetings 9 90 ! un-define symbol at runtime
2 Caveats
The "workday" and "holiday" keywords are aware of only those
holidays which have already been flagged at the point where they
appear. For example, consider January 1990:
January 1990
S M Tu W Th F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
If the CALENDAR.DAT file looked like this:
workday on_or_before all 15 payday
3rd Mon in Jan* MLK day
then Pcal would mark the 15th as "payday" since at that point in
the CALENDAR.DAT file it has no way of knowing that January 15th
will later be flagged as a holiday. If the two lines were
reversed, such that the holiday preceded the "workday" wildcard,
then Pcal would work as intended, marking instead the 12th as
"payday". Also, beware of year boundaries which affect the
handling of all of the day wildcard keywords. In general, it is
best to place monthly wildcards such as the example above at the
end of each year to achieve the desired effect.
Only the positive ordinals may be used in conjunction with
prepositions (e.g., "fourth Sunday before 12/25"). (It could be
argued that "last Sunday before 12/25" should be accepted as a
synonym for "first Sunday before 12/25", but then what does "last
Sunday after 12/25" mean?)
When the -w and -p options are used together, pcal revises the
y-scale factor in order to use the entire portrait page;
therefore, the user should avoid using use the -y using both the
-w and -p options. Use of the -w option in any case effectively
disables the -m, -"M", -j, and -"J" options.
The output of the -c option may be used as input to subsequent
runs of pcal. Note, however, that opt lines (except for an
automatic "opt \-[A|E]" ), comments, "note" text, and ifdef'd-out
source will be lost.
The -S option interacts with note[/<number>]; if used, it
should be specified either on the command line or prior to the
first note line in the date file.
2 Authors
The original PostScript code to generate the calendars was
written by Patrick Wood (Copyright (c) 1987 by Patrick Wood of
Pipeline Associates, Inc.), and authorized for modifica- tion and
redistribution. The calendar file inclusion code was originally
written in bs(1) by Bill Vogel of AT&T. Patrick's original
PostScript was modified and enhanced several times by others whose
names have regrettably been lost. Ken Keirnan of Pacific Bell
assembled the original "C" version upon which this is based;
additional modifications and enhancements are the work of Joseph
P. Larson, Ed Hand, Andrew W. Rogers, Mark Kantrowitz, Joe
Brownlee, Jamie Zawinski, Richard L. Dyson, Bill Hogsett, Floyd
Miller, Andy Fyfe, and Geoff Kuenning.
2 Version
This help file currently reflects pcal v4.5 dated 6-OCT-1994
and was updated by Richard Dyson.